@echo off
echo ===== 第二课堂管理系统菜单结构修复和启动脚本 =====
echo 此脚本将调整菜单结构并启动系统

REM 设置数据库连接参数
set DB_USER=root
set DB_PASSWORD=123456
set DB_NAME=scms
set DB_HOST=localhost
set DB_PORT=3306

echo 数据库连接信息:
echo 用户名: %DB_USER%
echo 数据库: %DB_NAME%
echo 主机: %DB_HOST%:%DB_PORT%
echo.

echo 步骤1: 检查并停止已运行的实例...
for /f "tokens=5" %%a in ('netstat -ano ^| findstr :8089') do (
    echo 发现端口8089被进程PID: %%a占用，尝试终止...
    taskkill /F /PID %%a
)

echo 步骤2: 执行菜单结构修复SQL...
mysql -u %DB_USER% -p%DB_PASSWORD% -h %DB_HOST% -P %DB_PORT% %DB_NAME% < sql\menu_restructure.sql
if %ERRORLEVEL% NEQ 0 (
    echo 错误: 执行SQL脚本失败，请检查数据库连接参数。
    goto :error
) else (
    echo SQL脚本执行成功！
)

echo 步骤3: 修复Mapper和Domain问题...
if exist "fix_mapper_issues_enhanced.bat" (
    call fix_mapper_issues_enhanced.bat
    if %ERRORLEVEL% NEQ 0 (
        echo 错误: 修复Mapper和Domain问题失败。
        goto :error
    ) else (
        echo Mapper和Domain问题修复成功！
    )
) else (
    echo 未找到fix_mapper_issues_enhanced.bat，跳过Mapper和Domain问题修复。
)

echo 步骤4: 启动系统...
cd scms-admin
call mvn spring-boot:run

echo ===== 菜单结构修复完成！=====
echo 系统已启动，请刷新浏览器查看修改后的菜单结构。
goto :end

:error
echo 修复过程中出现错误，请查看上面的错误信息。

:end
pause 